در دنیای امروزی که همه چیز مبتنی بر داده است، مدیریت و دسترسی به حجم وسیعی از اطلاعات برای کسبوکارها و توسعهدهندگان از اهمیت بالایی برخوردار است. دادهها را میتوان در قالب پایگاه داده، ساختار فایل و… ذخیره کرد. در این راستا از نرم افزارهای مختلف پایگاه داده برای ذخیره و استخراج نتایج استفاده میشود که یکی از رایجترین سیستمهای مدیریت پایگاه دادهای، MySQL است.
برای کسانی که تازه وارد حوزه پایگاه داده و یا مدیریت داده شدهاند، MySQL ممکن است ناآشنا به نظر برسد. در این مقاله، توضیح خواهیم داد که MySQL چیست و چرا ابزار بسیار مهمی برای ذخیره سازی داده است.
پایگاه داده چیست؟
قبل از تسلط بر MySQL، درک مفاهیم پایگاه داده یا همان دیتابیس (database) بسیار مهم است. یک پایگاه داده برنامهای است که مجموعه ای از رکوردها را سازماندهی و ذخیره میکند. دسترسی و مدیریت پایگاه داده برای کاربر بسیار ساده است. پایگاه داده به ما اجازه میدهد تا با سازماندهی دادهها در جداول، ردیفها، ستونها و فهرستها، به سرعت به اطلاعات ضروری دسترسی پیدا کنیم. هر پایگاه داده دارای یک API برای انجام وظایف پایگاه داده مانند تولید، مدیریت، دسترسی و یافتن اطلاعاتی است که در اختیار دارد. امروزه پایگاههای داده بسیاری از جمله MySQL، Sybase، Oracle، MongoDB، PostgreSQL، SQL Server و… در دسترس هستند. در ادامه این مقاله، بیشتر بر روی MySQL تمرکز خواهیم کرد.
MySQL چیست؟
MySQL یک سیستم مدیریت پایگاه داده رابطهای است (که اغلب به RDBMS کوتاه میشود). SQL مخفف Structured Query Language است و در سال 1995 توسط MySQL AB، یک کسب و کار سوئدی تاسیس شد. هدف اولیه از طراحی MySQL ارائه یک راه حلها کارآمد و قابل اطمینان برای مدیریت داده به مصرف کنندگان (هم در خانه و هم در محل کار) بود. تا سال 2000، نسخههای آلفا و بتای زیادی از این پلتفرم راه اندازی شد. در نهایت در سال 2000، MySQL متن باز شد و شروع به پیروی از شرایط GPL کرد.
MySQL با 2 میلیون نصب فعال تا سال 2001، محبوبیت خود را در بین کاربران خانگی و حرفهای افزایش داد. علاوه بر دفتر مرکزی سوئدی، این شرکت در سال 2002 با ایجاد حضور در ایالات متحده، دامنه فعالیت خود را گسترش داد. در همان سال، اعلام شد که اعضای این پلتفرم از مرز 3 میلیون نفر فراتر رفته و در مجموع 6.5 میلیون دلار درآمد داشته اند.
اشتباهات رایج در مورد MySQL
افراد تازه واردی که میخواهند کار با MySQL را شروع کنند، دارای دو پرسش معمول در مورد چیستی MySQL هستند:
پرسش اول: MySQL یک نرم افزار است یا زبان برنامه نویسی؟
MySQL یک سیستم مدیریت پایگاه داده است، نه یک زبان برنامه نویسی. MySQL از زبان پرس و جو ساخت یافته (SQL) برای مدیریت دادهها در داخل پایگاه داده استفاده میکند.
پرسش دوم: آیا MySQL یک پایگاه داده است؟
گفتیم که پایگاه داده یا Database مجموعه ای از اطلاعات سامان یافته است که بر اساس ترتیب و قواعدی مشخص در کنار یکدیگر نگهداری میشوند. مدیریت اطلاعات ذخیره شده در دیتابیس توسط کاربران معمولا از طریق یک سیستم مدیریت پایگاه داده (Database Management System) یا همان DBMS صورت میگیرد. همانطور که در بخش قبل اشاره کردیم، MySQL یک سیستم مدیریت پایگاه داده رابطهای است. پایگاه داده رابطه ای مجموعه ای از جداول به خوبی سازماندهی شده است که به یکدیگر پیوند دارند و میتوان از آنها به راحتی به دادهها دسترسی داشت. بنابراین اگرچه MySQL یک پایگاه داده نیست، اما به طور گسترده در ارتباط با مدیریت و سازماندهی دادهها در پایگاههای داده استفاده میشود.
ویژگیهای کلیدی MySQL
یکی از مهمترین ویژگیهای MySQL این است که از پرس و جوهای SQL برای بازیابی و مدیریت رکوردهای جدول برای مدیریت پایگاه داده استفاده میشود. در ادامه با سایر ویژگیهای کلیدی MySQL آشنا خواهید شد.
استفاده آسان
MySQL یک سیستم مدیریت پایگاه داده ساده است و کار با آن آسان میباشد. در حقیقت برای کار با MySQL تنها نیاز به یادگیری اصول SQL دارید؛ چراکه برای ایجاد تعامل با MySQL تنها چند دستور ساده SQL مورد نیاز است.
ایمن
MySQL دارای یک لایه امنیتی قوی برای محافظت از دادههای حساس در برابر هکرها است. علاوه بر آن، MySQL حتی گذرواژهها را رمزگذاری میکند.
معماری مشتری/سرور
معماری مشتری/سرور توسط MySQL پشتیبانی میشود. یک سرور پایگاه داده (MySQL) و تعداد نامحدودی از کلاینتها (برنامههای کاربردی) با یکدیگر ارتباط برقرار میکنند و میتوانند دادهها را پرس و جو کنند، تغییرات ایجاد کنند و غیره.
متن باز
استفاده از MySQL رایگان است و میتوان آن را از وب سایت رسمی MySQL دریافت کرد.
مقیاس پذیر
MySQL مقیاس پذیر است زیرا از سیستم چند نخی یا multi-threading پشتیبانی میکند. این ویژگی موجب میشود بتوانید با حجم زیادی از دادهها کار کنید.
سرعت
MySQL در تستهای مختلفی به عنوان یکی از سریعترین سیستمهای مدیریت پایگاه داده شناخته شده است.
انعطاف پذیری بالا و سازگاری
MySQL بسیار سازگار است؛ زیرا از طیف گستردهای از برنامههای کاربردی پشتیبانی میکند. علاوه بر آن MySQL میتواند بر روی انواع سیستم عامل ها، از جمله Novell NetWare، Windows ، Linux ، UNIX (از جمله Sun Solaris، AIX و UNIX، OS/2، FreeBSD و… اجرا شود.
بازگشت به عقب
MySQL این امکان را میدهد که پس از یک خرابی یک rollback، commit و بازیابی کنید.
کارایی حافظه
کارایی MySQL خوب است زیرا نشت حافظه حداقل است.
عملکرد بالا
به دلیل معماری منحصر به فرد موتور ذخیره سازی، MySQL سریع تر، قابل اعتمادتر و ارزانتر است و در مقایسه با سایر پایگاههای داده، با نادیده نگرفتن هیچ یک از ویژگیهای مهم نرم افزار، نتایج عملکرد فوق العاده خوبی را به دست آورده است. همچنین MySQL یک حافظه نهان دارد که به بارگذاری سریع کمک میکند.
بهره وری بالا
راهاندازها، رویههای ذخیرهشده و نماها همگی در MySQL برای کمک به توسعهدهندگان استفاده میشوند تا بهرهوری افزایش یابد.
پارتیشن بندی
این ویژگی عملکرد را افزایش میدهد و امکان مدیریت سریع پایگاه دادههای عظیم را فراهم میکند.
پشتیبانی از رابط کاربری گرافیکی
MySQL یک رابط کاربری گرافیکی پایگاه داده بصری یکپارچه را برای معماران پایگاه داده، توسعه دهندگان و مدیران پایگاه داده ارائه داده است. MySQL Workbench شامل ابزارهای توسعه SQL، مدلسازی داده، انتقال داده و پیکربندی سرور، مدیریت کاربر، پشتیبانگیری و سایر امکانات مدیریتی است. از MySQL Server نسخه 5.6 و بالاتر، پشتیبانی کامل از رابط کاربری گرافیکی 17 وجود دارد.
پشتیبانی از رمز عبور دوگانه
MySQL نسخه 8.0 از رمزهای عبور دوگانه پشتیبانی میکند: یکی رمز عبور فعلی و دیگری یک رمز عبور پشتیبان است که میتوان از آن برای تغییر به رمز جدید استفاده کرد.
مزایای استفاده از MySQL
استفاده از MySQL دارای مزایای زیادی است که در زیر به برخی از این موارد اشاره میکنیم:
MySQL رایگان و متن باز است: در نتیجه استفاده از آن هیچ هزینهای ندارد.
MySQL به خودی خود یک برنامه بسیار قدرتمند است و میتواند بخش قابل توجهی از ویژگیهای موجود در گرانترین و پیچیدهترین راه حلهای پایگاه داده را مدیریت کند.
MySQL از یک نسخه استاندارد از زبان داده SQL استفاده میکند.
MySQL با طیف گستردهای از سیستم عاملها و زبانهای برنامه نویسی از جمله PERL، C، C++، JAVA و غیره سازگار است. (به ویژه با سایت PHP ، محبوبترین زبان توسعه وب)
MySQL یک سیستم مدیریت پایگاه داده سریع است که حتی زمانی که با حجم عظیمی از دادهها سروکار دارد، عملکرد خوبی دارد.
MySQL میتواند پایگاه دادههای بسیار بزرگ را با حداکثر 50 میلیون ردیف در یک جدول مدیریت کند. محدودیت اندازه فایل پیش فرض برای یک جدول 4 گیگابایت است، با این حال، میتوانید آن را از لحاظ تئوری تا 8 میلیون گیگابایت افزایش دهید (با فرض اینکه سیستم عامل شما بتواند آن را پشتیبانی و مدیریت کند)
معایب استفاده از MySQL
هرچند که MySQL دارای مزایای زیادی است، اما مانند هر ابزار دیگری استفاده از آن دارای معایبی میباشد. از جمله:
در مقایسه با پایگاه دادههای دیگر، ابزارهای توسعه و اشکال زدایی خوبی ندارد.
در مدیریت تراکنشها ناکارآمد است.
از رویههای ROLE، COMMIT و ذخیره شده در نسخههای کمتر از 5.0 پشتیبانی نمیکند.
مقیاس پذیری در MySQL کمی پردردسر است. MySQL از Sharding خودکار پشتیبانی نمیکند، شما باید گرهها را به صورت دستی نگهداری کنید.
MySQL رویههای ذخیره شده ضعیفی دارد.
نصب یک خوشه پایگاه داده سازگار با MySQL بسیار دشوار است.
برخی از خطاها گمراه کننده هستند.
Subquery همبسته آنطور که در نظر گرفته شده کار نمیکند.
توسعه دهندگان ممکن است برخی از محدودیتهای آن را بسیار دشوار بدانند.
MySQL چگونه کار میکند؟
نمودار زیر معماری سرویس گیرنده-سرور را در سادهترین حالت ممکن به تصویر میکشد. از طریق یک شبکه تخصصی، یک یا چند دستگاه مشتری (کلاینت) به یک سرور متصل میشوند. هر مشتری میتواند با استفاده از رابط کاربری گرافیکی (GUI) روی صفحه نمایش خود درخواستی ارسال کند و زمانی که هر دو طرف درخواست را درک کنند، سرور با نتیجه مورد نظر خود پاسخ خواهد داد. در حالت کلی فرآیندهای کلیدی زیر در یک محیط MySQL رخ میدهند:
MySQL یک پایگاه داده برای ذخیره و دستکاری دادهها با رابطه هر جدول ایجاد میکند.
کلاینتها میتوانند با وارد کردن عبارات SQL مشخص شده درخواستها را به MySQL ارسال کنند.
اطلاعات درخواستی توسط برنامه سرور برگردانده شده و در سمت مشتریان نمایش داده میشود.
مشتریان اغلب تأکید میکنند که کدام رابط کاربری گرافیکی MySQL باید استفاده شود. هرچه عملیات مدیریت داده آنها سریعتر و آسانتر باشد، رابط کاربری گرافیکی سبکتر و کاربرپسندتر است. MySQL WorkBench، SequelPro، DBVisualizer، و Navicat DB Admin Tool برخی از محبوبترین رابط کاربری گرافیکی MySQL هستند که میتوانند رایگان یا پولی باشند. برخی انحصاری برای macOS هستند، در حالی که برخی دیگر با تمام سیستم عاملهای اصلی سازگار هستند. مشتریان باید رابط کاربری گرافیکی را انتخاب کنند که به بهترین وجه با نیازهای آنها مطابقت دارد. واضحترین راه برای نگهداری پایگاه داده وب، از جمله سایت وردپرس، phpMyAdmin است.
مقایسه MySQL و SQL Server
MySQL یک سیستم مدیریت پایگاه داده رابطهای متن باز است که توسط Oracle معرفی شده است. SQL Server نیز یک سیستم مدیریت پایگاه داده رابطهای اختصاصی است که توسط مایکروسافت طراحی شده است. این دو دارای ویژگیهای مخصوص به خود هستند که در ادامه به آنها اشاره میکنیم:
پشتیبانی از پلتفرم: MySQL از پلتفرمهای بیشتری نسبت به SQL Server پشتیبانی میکند.
پشتیبانی از زبان برنامه نویسی: MySQL از زبانهای برنامه نویسی بیشتری نسبت به SQL Server مانند Perl و Haskel پشتیبانی میکند.
امکانات: MySQL دارای طیف گستردهتری از اتصالات و ادغامهای شخص ثالث است. از طرفی SQL Server به شما امکان میدهد چندین پایگاه داده را همزمان فیلتر کنید. همچنین میتوانید یک پرس و جو را بدون پایان دادن به یک فرآیند کامل متوقف کنید.
مقیاس پذیری: MySQL دارای ویژگیهایی است که آن را مقیاس پذیر میکند، اما نه به اندازه SQL Server .SQL Server از فشرده سازی، پارتیشن بندی پیشرفته و فناوری درون حافظه برای ارائه یک محیط بسیار مقیاس پذیر استفاده میکند.
کارایی: MySQL از ادغام اتصال و ذخیره پرس و جو برای ارائه عملکرد بالا استفاده میکند. از طرفی SQL Server بهتر از MySQL هنگام اجرا در یک محیط مقیاس شده پاسخ میدهد.
زبان و نحو پرس و جو: هر دو از SQL به عنوان یک زبان پرس و جو استفاده میکنند.
پشتیبانی محصول و مستندات: MySQL متن باز است اما SQL Server یک نرم افزار اختصاصی است و هزینه دارد.
ویژگیهای امنیتی: با MySQL، میتوانید پایگاه داده را در زمان اجرا ویرایش کنید اما با SQL Server، نمیتوانید فایلها را در زمان اجرا ویرایش کنید یا به آنها دسترسی پیدا کنید.
آیا نسخه MySQL مهم است؟
احتمالا میدانید که نسخه سازی در اصل اختصاص دادن نام یا شماره متمایز به گروهی از برنامههای نرم افزاری هنگام ایجاد و توزیع است. اصطلاح "نسخه 1.0" به طور گستردهای برای اشاره به انتشار اولیه یک نرم افزار یا برنامه استفاده میشود. هیچ دستورالعمل استاندارد صنعتی بر نحوه قالب بندی شماره نسخهها نظارت نمیکند. در نتیجه، هر شرکتی سیستم خود را برای نامگذاری نسخههای نرمافزار دارد. هنگامی که ویژگیهای جدید در نرمافزارها و برنامهها اضافه شده، باگها و آسیبپذیریهای امنیتی برطرف میشوند، شماره نسخه تغییر میکند تا این پیشرفتها را اعلام کند.
هنگام نصب MySQL بر روی رایانه شخصی خود، باید نسخه و فرمت توزیع مورد نظر خود را انتخاب کنید. MySQL در دو نسخه موجود است که نسخه اول نسخه توسعه و نسخه دوم نسخه عمومی در دسترس بودن (GA) است. نسخه توسعه حاوی جدیدترین ویژگی است و توصیه شده که تا حد امکان در فرآیند تولید استفاده نشود. انتشار GA که اغلب به عنوان نسخه پایدار شناخته شده در درجه اول برای تولید استفاده میشود. در نتیجه، اگر به دنبال دانلود MySQL هستید باید جدیدترین نسخه در دسترس بودن عمومی را انتخاب کنید. آخرین نسخه پشتیبانی از MySQL نسخه v5.8 است. این نسخه از آوریل 2018 در دسترس خواهد بود و تا آوریل 2026 پشتیبانی میشود. ویژگیهای این نسخه عبارتند از:
دیکشنری داده: تراکنشی است که برای نگهداری اطلاعات در مورد اشیاء پایگاه داده استفاده میشود. دادهها تا قبل از این (در نسخههای قبلی) در فایلهای فراداده و جداول نگهداری میشدند.
DDL اتمی: یک عبارت DDL اتمی است که عملیات موتور ذخیره سازی، تغییرات فرهنگ لغت دادهها و گزارش باینری مرتبط با یک عملیات DDL را در یک تراکنش اتمی ترکیب میکند.
امنیت و مدیریت حساب: پیشرفتهایی برای تقویت امنیت و انعطاف پذیری بیشتر DBA در مدیریت حساب انجام شده است.
مدیریت منابع: MySQL به شما اجازه میدهد تا منابع را گروه بندی کرده و رشتههایی را به هر گروه اختصاص دهید تا بتواند بر اساس منابع در دسترس آن را اجرا کند. استفاده از منابع را میتوان با ویژگیهای گروه کنترل کرد.
مدیریت رمزگذاری جدول: اکنون رمزگذاری جدول در سطح سیستم با ایجاد و اجرای پیش فرضهای رمزگذاری کنترل میشود. همچنین این نسخه هنگام ساخت یک طرح و فضای جدول کلی، متغیر پیشفرض رمزگذاری جدول یا عبارت DEFAULT ENCRYPTION پیشفرض رمزگذاری را ارائه میکند.
بهبودهای InnoDB: شمارشگر افزایش خودکار، خرابی درخت فهرست، پلاگین Memcached، تشخیص بن بست InnoDB، ویژگی رمزگذاری فضای جدول، موتور ذخیره سازی، سرور اختصاصی InnoDB، کتابخانه Zlib و بسیاری از پیشرفتهای InnoDB دیگر در این نسخه گنجانده شده است.
پشتیبانی از مجموعه کاراکتر: latin1 با utf8mb4 به عنوان مجموعه کاراکتر پیش فرض جایگزین شده است. بسیاری از ترکیبهای جدید در مجموعه کاراکترهای جدید گنجانده شدهاند، به ویژه utf8MB JA 0900 به عنوان cs.
پشتیبانی از نوع داده: از عبارات به عنوان مقادیر پیش فرض در مشخصات نوع داده پشتیبانی کند.
بهینه سازی: این نسخه شامل بهبودهایی در بهینه سازی، مانند نمایههای نامرئی، شاخصهای نزولی و امکان ایجاد شاخص عملکردی است.
بسیاری از توابع جدید مانند RANK ، LAG و NTILE در این نسخه پشتیبانی میشوند.
بهبود کار با نوع داده JSON
سخت افزار مورد نیاز MySQL
حداقل سخت افزار مورد نیاز که توسط سازندگان MySQL توصیه شده است عبارتند از:
سی پی یو 64 بیت x86 چند هسته ای
رم 4 گیگابایت یا بالاتر
رزولوشن 1024×768 یا بالاتر
حداقل سیستم مورد نیاز برای MySQL Enterprise Monitor Service Manager:
یک CPU با دو یا چند هسته
دیسک با رم 2 گیگابایت یا بیشتر
سیستم توصیه شده: (اگر به بیش از 100 سرور MySQL نیاز دارید)
یک CPU با چهار هسته یا بیشتر
دیسک با حداقل 8 گیگابایت رم RAID 10، RAID 0+1)
اصطلاحات رایج در کار با MySQL
هنگام کار با پایگاه داده و MySQL بهتر است با اصطلاحات رایج این حوزه آشنا باشید. در ادامه این اصطلاحات را معرفی میکنیم.
جدول (table)
ابتداییترین شکل ذخیره سازی دادهها جدول است. جدول مجموعهای از اجزای داده است که در ردیفها و ستونها در قالب پایگاه داده رابطهای سازماندهی شدهاند. جدول به عنوان یک راه مناسب برای نمایش روابط در نظر گرفته میشود. یک جدول میتواند دارای ردیفهای تکراری از دادهها باشد، در حالی که یک رابطه واقعی نمیتواند. نمونهای از جدول دانشجویان در زیر نشان داده شده است:
شناسه نام نام خانوادگی درس نمره
1 علی احمدی برنامه نویسی پیشرفته 18
2 امیر قلی زاده سیستم عامل 16
3 مینا رشیدی سیستم عامل 17
تاپل (tuple)
یک تاپل یا سطر، رکورد یا ردیف یک ورودی واحد در یک جدول است. یک تاپل در یک جدول مجموعهای از دادههای مرتبط است. به عنوان مثال، جدول بالا دارای سه سطر/ رکورد / ردیف است.
صفت (attribute)
یک جدول از رکوردهای (ردیف) متعددی تشکیل شده است که هر کدام از آنها را میتوان به صفات تقسیم کرد که قطعات کوچکتری از داده هستند. شناسه، نام، نام خانوادگی، درس و نمره پنج ویژگی در جدول دانشجویان در بالا هستند.
دامنه مشخصه
دامنه صفت یا مشخصه زمانی تعریف میشود که یک ویژگی در یک جدول برای نگه داشتن نوع خاصی از مقدار تعریف شود. برای مثال برای هر سطر، ویژگی نام، نام دانشجو را ذخیره میکند. اگر آدرس دانشجو را در آنجا ذخیره کنیم، مفهوم پایگاه داده رابطهای را نقض میکند.
کلید رابطه
کلید رابطه خصوصیتی است که میتوان از آن برای شناسایی یک ردیف خاص در یک جدول استفاده کرد.
محدودیتهای یکپارچگی رابطهای
برای اینکه یک رابطه در یک مدل پایگاه داده رابطهای به صورت قانونی باشد، هر رابطه باید به مجموعهای از محدودیتها که به عنوان محدودیتهای یکپارچگی رابطهای معروف هستند، پایبند باشد یا از آن تبعیت کند. موارد زیر سه محدودیت اصلی یکپارچگی هستند:
محدودیتهای کلیدی
محدودیتهای دامنه
محدودیتهای یکپارچگی مرجع
محدودیتهای کلیدی
ما دادهها را در جداول نگه میداریم تا بتوانیم بعدا در صورت نیاز به آنها دسترسی داشته باشیم. برای بازیابی دادهها از جداول، یک یا چند ویژگی در هر جدول ترکیب میشود. محدودیت کلید بیان میکند که هر جدول باید دارای یک ویژگی (ستون) باشد تا بتواند برای به دست آوردن داده هر ردیف استفاده شود. برای دو ردیف مختلف داده، ویژگی کلید هرگز نباید تهی (NULL) یا یکسان باشد. به عنوان مثال، در پایگاه داده دانشجویان، ستون شناسه میتواند برای دسترسی به دادههای یک دانشجو استفاده شود.
محدودیت دامنه
محدودیتهای دامنه قوانینی هستند که بر انواع مقادیری که میتوان برای یک ویژگی خاص ذخیره کرد، نظارت میکند. برای مثال همانطور که قبلا گفته شد، ما نمیتوانیم آدرس یک دانشجو را در ستون نام ذخیره کنیم. یا در مثالی دیگر، شماره تلفن همراه نمیتواند بیش از ده رقم باشد.
محدودیت یکپارچگی مرجع
این مفهوم کمی پیچیدهتر از سایر محدودیتها است؛ به همین دلیل با مثال آن را توضیح میدهیم. فرض کنید بگوییم دانشجویی در درس سیستم عامل نمره 19 گرفته است. پس درسی به نام سیستم عامل نیز باید وجود داشته باشد تا آن رابطه وجود داشته باشد. پس اگر جدولی به دادههای جدول دیگری اشاره دارد، آن جدول و داده باید برای نگهداری محدودیت یکپارچگی ارجاعی وجود داشته باشد.
جمعبندی
در حال حاضر اغلب شرکتهای بزرگ از MySQL استفاده میکنند. بسیاری از برنامههای وب مبتنی بر پایگاه داده مانند دروپال، جوملا، phpBB و وردپرس و همچنین بسیاری از وب سایتهای بزرگ مانند فیس بوک، فلیکر، مدیاویکی، توییتر و یوتیوب از MySQL استفاده میکنند.
در این مقاله در مورد MySQL و اهمیت استفاده از آن در پروژههای کامپیوتری صحبت کردیم. استفاده آسان از MySQL و سرعت بالای آن یکی از عوامل مهم در افزایش رضایت کاربران است. به همین دلیل است که اغلب برنامه نویسان به دنبال بکارگیری MySQL در پروژههای خود هستند.